package com.twetec.cms.model.po.website;

import com.twetec.cms.model.po.base.BasePO;
import com.baomidou.mybatisplus.annotation.TableName;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.Version;
import com.baomidou.mybatisplus.annotation.TableField;

/**
 * <p>
 * 文章表
 * </p>
 *
 * @author zhxl
 * @since 2021-10-08
 */
@TableName("ARTICLE")
public class ArticlePO extends BasePO {

    private static final long serialVersionUID=1L;

    /**
     * 站点id
     */
    @TableField("SITE_ID")
    private Long siteId;

    /**
     * 栏目id
     */
    @TableField("COLUMN_ID")
    private Long columnId;

    /**
     * 文章标题
     */
    @TableField("TITLE")
    private String title;

    /**
     * 文章摘要
     */
    @TableField("SUMMARY")
    private String summary;

    /**
     * 文章属性(文字WEN_ZI,图片TU_PIAN,视频SHI_PIN)
     */
    @TableField("ATTRIBUTE")
    private String attribute;

    /**
     * 发布渠道(PC,H5,API)
     */
    @TableField("RELEASE_CHANNEL")
    private String releaseChannel;

    /**
     * 发布时间
     */
    @TableField("RELEASE_TIME")
    private Date releaseTime;

    /**
     * 公告开始时间
     */
    @TableField("GMT_ANNOUNCEMENT_START")
    private Date gmtAnnouncementStart;

    /**
     * 公告结束时间
     */
    @TableField("GMT_ANNOUNCEMENT_END")
    private Date gmtAnnouncementEnd;

    /**
     * 封面图(多张使用json形式存储)
     */
    @TableField("COVER")
    private String cover;

    /**
     * 封面图类型(单图DAN_TU,多图DUO_TU,横图HENG_TU)
     */
    @TableField("COVER_TYPE")
    private String coverType;

    /**
     * 排序
     */
    @TableField("SORT")
    private Long sort;

    /**
     * 排序类型(置顶ZHI_DING,发布时间FA_BU_SHI_JIAN,自定义ZI_DING_YI)
     */
    @TableField("SORT_TYPE")
    private String sortType;

    /**
     * 文章状态(草稿CAO_GAO,待审核DAI_SHEN_HE,待修改DAI_XIU_GAI,已发布YI_FA_BU,已下架YI_XIA_JIA,已过期YI_GUO_QI)
     */
    @TableField("ARTICLE_STATUS")
    private String articleStatus;

    /**
     * 是否被回收(0默认，1回收)
     */
    @TableField("IS_RECOVERY")
    private Integer recovery;


    /**
     * 审核原因
     */
    @TableField("VERIFY_REASON")
    private String verifyReason;


    /**
     * 文章类型(图文咨询TU_WEN_ZI_XUN,下载文件XIA_ZAI_WEN_JIAN,跳转链接TIAO_ZHUAN_LIAN_JIE,公告咨询GONG_GAO_ZI_XUN)
     */
    @TableField("TYPE")
    private String type;

    /**
     * 来源
     */
    @TableField("ORIGIN")
    private String origin;

    /**
     * 作者
     */
    @TableField("AUTHOR")
    private String author;

    /**
     * 栏目名称
     */
    @TableField(exist = false)
    private String columnName;

    /**
     * 栏目xpath
     */
    @TableField(exist = false)
    private String columnXpath;

    public String getColumnXpath() {
        return columnXpath;
    }

    public void setColumnXpath(String columnXpath) {
        this.columnXpath = columnXpath;
    }

    public String getColumnName() {
        return columnName;
    }

    public void setColumnName(String columnName) {
        this.columnName = columnName;
    }

    public Long getSiteId() {
        return siteId;
    }

    public void setSiteId(Long siteId) {
        this.siteId = siteId;
    }

    public Long getColumnId() {
        return columnId;
    }

    public void setColumnId(Long columnId) {
        this.columnId = columnId;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getSummary() {
        return summary;
    }

    public void setSummary(String summary) {
        this.summary = summary;
    }

    public String getAttribute() {
        return attribute;
    }

    public void setAttribute(String attribute) {
        this.attribute = attribute;
    }

    public String getReleaseChannel() {
        return releaseChannel;
    }

    public void setReleaseChannel(String releaseChannel) {
        this.releaseChannel = releaseChannel;
    }

    public Date getReleaseTime() {
        return releaseTime;
    }

    public void setReleaseTime(Date releaseTime) {
        this.releaseTime = releaseTime;
    }

    public Date getGmtAnnouncementStart() {
        return gmtAnnouncementStart;
    }

    public void setGmtAnnouncementStart(Date gmtAnnouncementStart) {
        this.gmtAnnouncementStart = gmtAnnouncementStart;
    }

    public Date getGmtAnnouncementEnd() {
        return gmtAnnouncementEnd;
    }

    public void setGmtAnnouncementEnd(Date gmtAnnouncementEnd) {
        this.gmtAnnouncementEnd = gmtAnnouncementEnd;
    }

    public String getCover() {
        return cover;
    }

    public void setCover(String cover) {
        this.cover = cover;
    }

    public String getCoverType() {
        return coverType;
    }

    public void setCoverType(String coverType) {
        this.coverType = coverType;
    }

    public Long getSort() {
        return sort;
    }

    public void setSort(Long sort) {
        this.sort = sort;
    }

    public String getSortType() {
        return sortType;
    }

    public void setSortType(String sortType) {
        this.sortType = sortType;
    }

    public String getArticleStatus() {
        return articleStatus;
    }

    public void setArticleStatus(String articleStatus) {
        this.articleStatus = articleStatus;
    }

    public Integer getRecovery() {
        return recovery;
    }

    public void setRecovery(Integer recovery) {
        this.recovery = recovery;
    }

    public String getVerifyReason() {
        return verifyReason;
    }

    public void setVerifyReason(String verifyReason) {
        this.verifyReason = verifyReason;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getOrigin() {
        return origin;
    }

    public void setOrigin(String origin) {
        this.origin = origin;
    }

    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    public String getAuthor() {
        return author;
    }

    public void setAuthor(String author) {
        this.author = author;
    }

    @Override
    public String toString() {
        return "ArticlePO{" +
                "siteId=" + siteId +
                ", columnId=" + columnId +
                ", title='" + title + '\'' +
                ", summary='" + summary + '\'' +
                ", attribute='" + attribute + '\'' +
                ", releaseChannel='" + releaseChannel + '\'' +
                ", releaseTime=" + releaseTime +
                ", gmtAnnouncementStart=" + gmtAnnouncementStart +
                ", gmtAnnouncementEnd=" + gmtAnnouncementEnd +
                ", cover='" + cover + '\'' +
                ", coverType='" + coverType + '\'' +
                ", sort=" + sort +
                ", sortType='" + sortType + '\'' +
                ", articleStatus='" + articleStatus + '\'' +
                ", recovery=" + recovery +
                ", verifyReason='" + verifyReason + '\'' +
                ", type='" + type + '\'' +
                ", origin='" + origin + '\'' +
                ", author='" + author + '\'' +
                '}';
    }
}
